﻿using BCCommon.Enums;
using BCCommon.Extensions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BCDto.Sim.Admin.TreePermission
{
    /// <summary>
    /// 新版无限级树形权限
    /// </summary>
    public class TreePermissionConfigDto
    {
        /// <summary>
        /// 树形权限配置Id
        /// </summary>
        public long TreePermissionConfigId { get; set; }

        /// <summary>
        /// 权限名称
        /// </summary>
        public string PermissionName { get; set; }

        /// <summary>
        /// 权限类型
        /// </summary>
        public PermissionType PermissionType { get; set; }
        /// <summary>
        /// 权限类型
        /// </summary>
        public string PermissionTypeStr { get { return this.PermissionType.GetDescriptionString(); } }
        /// <summary>
        /// 权限码
        /// </summary>
        public string PermissionCode { get; set; }

        /// <summary>
        /// 权限路径码
        /// </summary>
        public string PermissionPathCode { get; set; }

        /// <summary>
        /// 父级权限路径码
        /// </summary>
        public string ParentPermissionPathCode { get; set; }

        /// <summary>
        /// 权限级别
        /// </summary>
        public int PermissionLevel { get; set; }

        /// <summary>
        /// 权限顺序
        /// </summary>
        public int PermissionOrder { get; set; }

        /// <summary>
        /// 页面路径码
        /// </summary>
        public string PagePathCode { get; set; }

        /// <summary>
        /// 图标
        /// </summary>
        public string Icon { get; set; }

        /// <summary>
        /// 显示
        /// </summary>
        public bool IsShow { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreateTime { get; set; }
    }
}
